The techniques and algorithms for computing a mathematical solution to a desired set of filter specifications are well known by experienced filter designers. Modern solutions most often employ digital filter techniques for increased stability, versatility, and lower cost than prior analog techniques. Digital filters usually are intended to select a desired frequency band from an electronic signal containing both the desired frequencies and undesirable noise frequencies.
Current filter design practices typically require a highly experienced analog electrical engineer with extensive knowledge of the signal processing chain of the relevant system, as well as the principles of noise sources and noise abatement techniques. The designer must be proficient in the use of various filter design simulators and tools and keep up with the capabilities of currently available filter integrated circuits. Once the designer has determined the approximate requirements for a needed filter in a system (such as through measurement of noise conditions or by the frequency plan of the system in design), he must then select a design method for arriving at an implementation; this will be the number of filter taps and the filter coefficient values. The design method commonly used today is the Parks-McClellan equi-ripple polynomial approximation algorithm.
There are several available software packages based upon Parks-McClellan and other algorithms that will generate coefficients and the number of taps required for a given specification. These are mathematical solutions, however. The designer must find the part or parts to implement the solution and account for any error terms as a result of constrained precision of numerical representations or variances in the components. This may require several iterations of both the design method phase and the implementation phase to arrive at an acceptable solution. Also, the translation of the resulting coefficients and device control parameters to the selected parts can be a formidable task.
There is a need for a system that can implement digital filters by closing the design loop between the purely mathematical design of a filter and the detailed hardware embodiment of that filter. In other words, the designer should be able to perform mathematical design, select appropriate hardware, simulate and verify the design as it would be executed by that hardware, and translate the operations and control parameters of the design to its final hardware embodiment, all within a single integrated system.